//package gg.zsw.bcrypt;
//
//import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
//
//import java.io.BufferedReader;
//import java.io.FileReader;
//import java.util.Scanner;
//
//public class 解析自己的密码 {
//
//    /**
//     * 个人加密密码格式
//     * 网站标识:账号:密码
//     *
//     * @param args
//     */
//    public static void main(String[] args) throws Exception {
//        {
//            String flag = "屌不屌";
//            String account = "溜不溜";
//            String password = "牛不牛逼";
//            String key = String.format("%s:%s:%s", flag, account, password);
//            System.out.println("牛逼:" + encode(key));
//        }
//
//        解析自己的密码 ob = new 解析自己的密码();
//        String web = "gitee";
//        String account = "zsw655";
//        System.out.println("正在尝试:" + web + ",账号:" + account);
//        String encode = ob.loadEncode(web, account);
//        if (encode == null || encode.isEmpty()) {
//            System.out.println("没存这个密码");
//        } else {
//            Scanner sc = new Scanner(System.in);
//            while (!ob.check(sc.next(), encode)) {
//                System.out.println("密码错误");
//            }
//            System.out.println("成功");
//        }
//    }
//
//    private String flag;
//    private String account;
//
//    public String loadEncode(String flag, String account) throws Exception {
//        this.flag = flag;
//        this.account = account;
//        String moduleName = "spring-learning";
//        String projectPath = System.getProperty("user.dir");
//        String modulePath = projectPath + "/" + moduleName + "/src/main/java/";
//        String className = 解析自己的密码.class.getPackage().getName().replace(".", "\\");
//        BufferedReader reader = new BufferedReader(new FileReader(modulePath + className + "\\密码表.txt"));
//        String line = "";
//        while ((line = reader.readLine()) != null) {
//            String[] split = line.split("=");
//            String[] input = split[0].split(",");
//            if (flag.equals(input[1]) && account.equals(input[2])) {
//                return split[1];
//            }
//        }
//        return null;
//    }
//
//
//    /**
//     * 个人加密密码格式
//     * 网站标识:账号:密码
//     *
//     * @param flag
//     * @param account
//     * @param password
//     * @param encodePassword
//     * @return
//     */
//    public static boolean check(String flag, String account, String password, String encodePassword) {
//        String key = String.format("%s:%s:%s", flag, account, password);
//        return new BCryptPasswordEncoder().matches(key, encodePassword);
//    }
//
//    public boolean check(String password, String encodePassword) {
//        String key = String.format("%s:%s:%s", flag, account, password);
//        return new BCryptPasswordEncoder().matches(key, encodePassword);
//    }
//
//    public static String encode(String password) {
//        return new BCryptPasswordEncoder().encode(password);//加密
//    }
//}
